Extending CSP-Prover by deadlock-analysis: Towards the verification of systolic arrays

نویسندگان

  • Yoshinao Isobe
  • Markus Roggenbach
  • Stefan Gruner
چکیده

Csp-Prover provides a deep encoding of the process algebra Csp in the interactive theorem prover Isabelle. Here, we extend Csp-Prover by a framework for the deadlock-analysis of networks. As a typical example we study systolic arrays and prove in Csp-Prover that Kung's classical algorithm for matrix-multiplication is deadlock-free. 1 Introduction Among the various frameworks for the description and modeling of reactive systems , process algebra plays a prominent rôle. It has turned out to be suitable for requirement specifications, design specifications, and also for formal refinement proofs [3]. In this context, the process algebra Csp [8, 18] has been successfully applied in various areas such as train control systems [6], software for the International Space Station [4, 5], or verification of security protocols [20]. Csp-Prover [9, 10] provides a deep encoding of the process algebra Csp within the interactive theorem prover Isabelle [16]. Its approach of interactive theorem proving complements proofs by (finite) model checking in FDR [13]. The strength of Csp-Prover is to be found in the analysis of large or even infinite state systems as well as in its ability to deal with parametrised systems such as systolic arrays. Deadlocks are certainly the best known and also most feared failures exhibited by concurrent systems. For parallel algorithms such as systolic arrays, the proof of deadlock-freedom is as fundamental as the proof of termination for sequential algorithms. Systolic arrays, see e.g. [17], often deal with loosely specified data such as matrices over rings. Furthermore, they scale up with the size of the problem , e.g. Kung's systolic array for the multiplication of n × n matrices requires n 2 processing elements. For these reasons it is impossible to treat such systems solely within the classical model checking approach that requires systems to be finite state. Proofs of deadlock-freedom in Csp-Prover alone [10] (e.g. that the interaction of certain components of the electronic payment system ep2, a new international standard for electronic payment systems, is deadlock-free) were based on the facts that (i) there are Csp processes that are deadlock-free by construction and (ii) that Csp's stable-failures refinement is deadlock-preserving. In this paper we show how to extend Csp-Prover with Deadlock-Freedom Proof Package (abbreviated to Dfp) which provides a proof technique 1 suggested by Roscoe & Dathi [19] in order to analyse networks. For example, Dfp contains a theorem for localizing the proof of deadlock freedom of a whole systolic …

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

CSP-Prover – a Proof Tool for the Verification of Scalable Concurrent Systems

The process algebra Csp [1] [4] [15] [16] is a formal method devoted to the modelling as well as to the analysis and verification of concurrent systems. It is a speciality of Csp that it captures both, the concurrent system as well as its desired properties, as specifications: Let Sys be the formal Csp model of a concurrent system, let P be a property formulated in Csp – such a property could, ...

متن کامل

Embedding the Stable Failures Model of CSP in PVS

We present an embedding of the stable failures model of CSP in the PVS theorem prover. Our work, extending a previous embedding of the traces model of CSP in [6], provides a platform for the formal verification not only of safety specifications, but also of liveness specifications of concurrent systems in theorem provers. Such a platform is particularly good at analyzing infinite-state systems ...

متن کامل

Using CSP to Verify Aspects of an occam-to-FPGA Compiler

This paper reports on the progress made in developing techniques for the verification of an occam to FPGA compiler. The compiler converts occam 1 programs into logic circuits that are suitable for loading into field-programmable gate arrays (FPGAs). Several levels of abstraction of these circuits provide links to conventional hardware implementations. Communicating Sequential Processes (CSP) ha...

متن کامل

Proof Principles of CSP – CSP-Prover in Practice

The process algebra Csp provides a well-established formalism for the modelling, analysis, and verification of concurrent systems. Besides being a specification language, Csp provides a valuable set of proof principles. We show in tutorial style, how these proof principles are made available in our tool Csp-Prover. Overall, Csp-Prover turns out to be an off-the-shelf proof tool ready for use in...

متن کامل

Towards a Unifying CSP approach to Hierarchical Verification of Asynchronous Hardware

Formal verification is increasingly important in asynchronous circuit design, since the lack of a global synchronizing clock makes errors due to concurrency (e.g., deadlocks) virtually impossible to detect by means of conventional methods such as simulation. This paper presents a hierarchical approach to asynchronous systems verification using CSP and its model checker FDR. The approach reflect...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2005